package com.cw.demo.api;

import java.util.List;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.cw.demo.api.dto.UserDto;
import com.cw.starter.center.dto.BasePageReqDto;
import com.cw.starter.center.dto.BaseReqDto;
import com.cw.starter.center.dto.R;

/**
 * 用户接口服务
 *
 * @author chenw
 * @date 2021/7/27
 */
public interface UserApi {
    /**
     * 根据id查询用户信息
     *
     * @param userDto
     * @return
     */
    R<UserDto> queryById(BaseReqDto baseReqDto, UserDto userDto);

    /**
     * 查询用户列表
     *
     * @param userDto
     * @return
     */
    R<List<UserDto>> queryList(BaseReqDto baseReqDto, UserDto userDto);

    /**
     * 分页查询用户列表
     *
     * @param userDto
     * @param basePageReqDto
     */
    R<Page<UserDto>> queryPage(BasePageReqDto basePageReqDto, UserDto userDto);

    /**
     * 新增或修改用户信息
     *
     * @param userDto
     */
    R<Boolean> saveUser(BaseReqDto baseReqDto, UserDto userDto);

    /**
     * 删除用户信息
     *
     * @param userDto
     */
    R<Boolean> removeUser(BaseReqDto baseReqDto, UserDto userDto);
}
